package digui;

public class Text1 {
    //题目  ： 力扣 50题  ： 快速幂
    //算法 ： 递归
    public double myPow(double x, int n) {
        //n应该是long类型的整数
        long N = n;
        return N >= 0 ? fun(x,N) : 1 / fun(x,-N);
    }

    public static double fun(double x, long N) {
        if(N == 0) {
            return 1;  //递归出口
        }
        double y =  fun(x,N/2);

        if(N % 2 == 0) {
            return y* y;
        }else{
            return y * y * x;
        }
    }

    public static void main(String[] args) {

    }
}
